package util;

import io.jsonwebtoken.*;
import model.SysUsers;

import java.util.Date;

public class JwtUtil {

    private static String key="jack";//密钥，公钥
    private static long exp = 30*60*1000;//有效期

    //生成token
    public static String createJwt(SysUsers users){
       return Jwts.builder()
                .setId(users.getId()+"")
                .setSubject(users.getAccount())//设置主体
                .setIssuedAt(new Date())//设置签发时间
                .setExpiration(new Date(System.currentTimeMillis()+exp))//设置过期时间
                .signWith(SignatureAlgorithm.HS256,key)//设置签名，选择算法和密钥，采用盐值作为私钥
                .compact();//签约，生成token字符串
    }





    //验证token
    public static Claims checkJwt(String token){
        return Jwts.parser().setSigningKey(key).parseClaimsJws(token).getBody();
    }
}
